
package Datos;

import Negocio.Foto;
import Negocio.Login;
import Negocio.Usuario;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;



public class UsuarioDB {
     public boolean grabar(Usuario usuario) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query = "insert into usuario values('"+usuario.getNombre()+"', '"+usuario.getApellido()+"', '" + usuario.getApodo()+"', '"+usuario.getCedula() +"', "+usuario.getMifoto().getCodigo() +", '"+usuario.getFecha_nacimiento() +"', '"+usuario.getContraseña()+ "')";
        Boolean resultado = db.ingreso(query);
        db.cerrarConexion();
        return resultado;
    }
     
  public int modificar(Usuario usuario) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="update usuario set nombre='" + usuario.getNombre() + "', apellido='" + usuario.getApellido() + "', apodo ='"  + usuario.getApodo() + "', fecha_nacimiento='"+usuario.getFecha_nacimiento()+"', contrasena ='"  + usuario.getContraseña()+ "' where cedula='" + usuario.getCedula()+"'";
        int resultado = db.modificacioneliminacion(query);
        db.cerrarConexion();
        return resultado;
    }
     
    public Usuario buscar(String cedula) throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="select * from usuario where cedula = '" + cedula+"'";        
        ResultSet resultado = db.seleccion(query);
        Usuario usuario=null;
        Foto foto=null;
        if (resultado!=null) {
            resultado.next();
            usuario = new Usuario();
            foto = new Foto();
            usuario.setCedula(resultado.getString("cedula"));           
            usuario.setNombre(resultado.getString("nombre"));
            usuario.setApellido(resultado.getString("apellido"));
            usuario.setApodo(resultado.getString("apodo"));
            usuario.setFecha_nacimiento(resultado.getString("fecha_nacimiento"));
            usuario.setContraseña(resultado.getString("contrasena"));
            foto.setCodigo(resultado.getInt("codigo_foto"));
            usuario.setMifoto(foto);
        } 
        db.cerrarConexion();
        return usuario;
        
    } 
     
    public ArrayList listar() throws SQLException {
        OperacionesBase db = new OperacionesBase();
        String query="select * from usuario ";
        ResultSet resultado = db.seleccion(query);
        Usuario usuario=null;
        Foto foto = null;
        ArrayList todos=new ArrayList();
        while (resultado.next()) {
            usuario = new Usuario();
            usuario.setNombre(resultado.getString(1));           
            usuario.setApellido(resultado.getString(2));
            usuario.setApodo(resultado.getString(3));
            usuario.setCedula(resultado.getString(4));
            foto.setCodigo(resultado.getInt(5));
            usuario.setMifoto(foto);
            usuario.setFecha_nacimiento(resultado.getString(6));
            usuario.setApodo(resultado.getString(7));
            todos.add(usuario);
        }
        db.cerrarConexion();
        return todos;
    }
    
    
    
    
}
